namespace SmartMathLibrary.DataMining
{
    /// <summary>
    /// Interface to implement a DataSelector class.
    /// </summary>
    public interface IDataSelector
    {
        /// <summary>
        /// Gets the value at a specified position.
        /// </summary>
        /// <param name="row">The specified row index.</param>
        /// <param name="column">The specified column index.</param>
        /// <returns>The value at the specified position.</returns>
        double GetValueAt(int row, int column);

        /// <summary>
        /// Gets the number of rows of the data set.
        /// </summary>
        /// <returns>The number of rows of the data set.</returns>
        int GetRowCount();

        /// <summary>
        /// Gets the number of columns of the data set.
        /// </summary>
        /// <returns>The number of columns of the data set.</returns>
        int GetColumnCount();
    }
}